# !/usr/bin/python
# -*- coding:utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
import sklearn.datasets as ds
import matplotlib.colors
from sklearn.cluster import DBSCAN
from sklearn.preprocessing import StandardScaler
def expand(a, b):
d = (b - a) * 0.1
return a-d, b+d
if __name__ == "__main__":
N = 1000
centers = [[1, 2], [-1, -1], [1, -1], [-1, 1]]
#scikit中的make_blobs方法常被用来生成聚类算法的测试数据,直观地说,make_blobs会根据用户指定的特征数量、
# 中心点数量、范围等来生成几类数据,这些数据可用于测试聚类算法的效果。
#函数原型:sklearn.datasets.make_blobs(n_samples=100, n_features=2,
# centers=3, cluster_std=1.0, center_box=(-10.0, 10.0), shuffle=True, random_state&
聚类算法之DBSCAN(具有噪声的基于密度的聚类方法)
最新推荐文章于 2024-09-09 18:20:46 发布
DBSCAN是一种无参数的聚类算法,它通过密度连接概念来发现任意形状的聚类。该算法能有效处理噪声点,无需预先设定簇的数量。DBSCAN基于两点间的欧几里得距离,寻找核心对象并扩展聚类。其核心思想是高密度区域形成聚类,低密度区域作为噪声或边界。通过调整ε邻域半径和最小点数(minPts)参数,可以适应不同密度的聚类分布。
摘要由CSDN通过智能技术生成